package nc.vo.am.common;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

import nc.vo.am.common.IDefItem;

public class DefItemVO implements IDefItem, Serializable {

	private String billTypeOfDef = null;
	private String keyOfDef = null;
	private int sizeOfDef = 0;
	private Map<String, Object> valuesMap = new HashMap<String, Object>();
	public DefItemVO() {
	}

	public DefItemVO(String billTypeOfDef, String keyOfDef, int sizeOfDef) {
		super();
		this.billTypeOfDef = billTypeOfDef;
		this.keyOfDef = keyOfDef;
		this.sizeOfDef = sizeOfDef;
	}

	public String getBillTypeOfDef() {

		return billTypeOfDef;
	}

	public Object getDefValue(String key) {

		return valuesMap.get(key);
	}

	public String getKeyOfDef() {

		return keyOfDef;
	}

	public int getSizeOfDef() {

		return sizeOfDef;
	}

	public void setDefValue(String key, Object value) {
		valuesMap.put(key, value);
	}

	public String[] getDefKeys() {
		String[] defKeys = new String[getSizeOfDef()];
		for (int i = 0; i < getSizeOfDef(); i++) {
			defKeys[i] = getKeyOfDef()+(i+1);
		}
		
		return defKeys;
	}

	public void setBillTypeOfDef(String billTypeOfDef) {
		this.billTypeOfDef = billTypeOfDef;
	}

	public void setKeyOfDef(String keyOfDef) {
		this.keyOfDef = keyOfDef;
	}

	public void setSizeOfDef(int sizeOfDef) {
		this.sizeOfDef = sizeOfDef;
	}	
}
